package com.yanqu.road.entity.activity.rankunionwar.data;

import com.yanqu.road.entity.DataObject;
import com.yanqu.road.entity.union.UnionBaseInfo;

import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

public class CrossRankUnionWarUnionData extends DataObject {

    private int activityId;

    private String unionId;

    //商会积分大小
    private int score;

    //累计输了几场了
    private int loseTimes;

    //累计赢了几场了
    private int winTimes;

    private boolean die;

    //捐献有多少能用
    private int donateNum;

    //捐献消耗明细 gameNo line num
    private Map<Integer,Map<Integer,Integer>> donateMap = new ConcurrentHashMap<>();

    private UnionBaseInfo unionBaseInfo;

    private Map<Long, CrossRankUnionWarMemberData> memberMap = new ConcurrentHashMap<>();

    //比赛序号 ，线路，指挥官userId
    private Map<Integer, Map<Integer,List<Long>>> opUserIdMap = new ConcurrentHashMap<>();

    private long updatePatronsTime;

    public int getActivityId() {
        return activityId;
    }

    public void setActivityId(int activityId) {
        this.activityId = activityId;
    }

    public String getUnionId() {
        return unionId;
    }

    public void setUnionId(String unionId) {
        this.unionId = unionId;
    }

    public int getLoseTimes() {
        return loseTimes;
    }

    public void setLoseTimes(int loseTimes) {
        this.loseTimes = loseTimes;
        setUpdateOption();
    }

    public int getWinTimes() {
        return winTimes;
    }

    public void setWinTimes(int winTimes) {
        if(winTimes != this.winTimes){
            this.winTimes = winTimes;
            setUpdateOption();
        }
    }

    public boolean isDie() {
        return die;
    }

    public void setDie(boolean die) {
        if(die != this.die){
            this.die = die;
            setUpdateOption();
        }
    }

    public UnionBaseInfo getUnionBaseInfo() {
        return unionBaseInfo;
    }

    public void setUnionBaseInfo(UnionBaseInfo unionBaseInfo) {
        this.unionBaseInfo = unionBaseInfo;
        setUpdateOption();
    }

    public Map<Long, CrossRankUnionWarMemberData> getMemberMap() {
        return memberMap;
    }

    public void setMemberMap(Map<Long, CrossRankUnionWarMemberData> memberMap) {
        this.memberMap = memberMap;
        setUpdateOption();
    }

    public long getUpdatePatronsTime() {
        return updatePatronsTime;
    }

    public void setUpdatePatronsTime(long updatePatronsTime) {
        if(updatePatronsTime != this.updatePatronsTime){
            this.updatePatronsTime = updatePatronsTime;
            setUpdateOption();
        }
    }

    public Map<Integer, Map<Integer, List<Long>>> getOpUserIdMap() {
        return opUserIdMap;
    }

    public void setOpUserIdMap(Map<Integer, Map<Integer, List<Long>>> opUserIdMap) {
        this.opUserIdMap = opUserIdMap;
        setUpdateOption();
    }

    public int getDonateNum() {
        return donateNum;
    }

    public void setDonateNum(int donateNum) {
        if(donateNum != this.donateNum){
            this.donateNum = donateNum;
            setUpdateOption();
        }
    }

    public Map<Integer, Map<Integer, Integer>> getDonateMap() {
        return donateMap;
    }

    public void setDonateMap(Map<Integer, Map<Integer, Integer>> donateMap) {
        this.donateMap = donateMap;
        setUpdateOption();
    }

    public int getScore() {
        return score;
    }

    public void setScore(int score) {
        if(score != this.score){
            this.score = score;
            setUpdateOption();
        }
    }
}
